e[Single]
#ScriptVersion[2]
#Title[UR1]

script_enemy_main{
	
	@Initialize{
		//f[^
		InitializeData();
		Initialize_Fairy( VERYSMALL );
		
		//摜ݒ
		imgBoss = imgFairy_Red;
		
		//Ctݒ
		SetLife( 20 );
		
		//蔻ݒ
		SetCollisionEx( 32, 8, false, 30 );
		
		//C^XNJn
		TMain();
	}
	
	@MainLoop{
		//yield[v
		yield;
	}
	
	@DrawLoop{
		//d摜`
		DrawFairy( imgBoss );
	}
	
	@Finalize{
		//ŏI
		FinalizeData();
	}
	
	/**
	 * C^XN
	 */
	task TMain(){
		//ړ^XN
		MoveTask();
		
		//24F(0.16b)҂
		FWait( 24 );
		
		//U
		alternative( difficult )
			case( "Easy" ){
				Atack_Easy();
			}
			case( "Normal" ){
				Atack_Normal();
			}
			case( "Panic" ){
				Atack_Panic();
			}
	}
	
	/**
	 * Easy UC^XN
	 */
	task Atack_Easy(){
		Atack1( 8, 3 );
	}
	
	/**
	 * Normal UC^XN
	 */
	task Atack_Normal(){
		Atack1( 6, 5 );
	}
	
	/**
	 * Panic UC^XN
	 */
	task Atack_Panic(){
		Atack1( 4, 5 );
	}
	
	/**
	 * e^XN1
	 */
	task Atack1( wtime, way ){
		let lnum = truncate( 90 / wtime );
		
		loop( lnum ){
			ascent( i in 0..way ){
				CreateShot01( GetX(), GetY(), 9, GetAngleToPlayer() + ( i -  (way - 1) / 2 ) * 15, US_BALL_M_BLUE, 0 );
			}
			
			FWait( wtime );
		}
	}
	
	/**
	 * ړ^XN
	 */
	task MoveTask(){
		FWait( 10 );
		
		loop( 60 ){
			SetAngle( GetAngle() + arg * (3 / 2) );
			yield;
		}
		
		FWait( 90 );
		
		//G
		isautodelete = true;
		VanishEnemy();
	}
	
	//XNvg̃CN[h
	#include_function ".\..\..\initialize_zako.txt"
}